home *** CD-ROM | disk | FTP | other *** search
/ Aminet 12 / Aminet 12 (1996)(GTI - Schatztruhe)[!][Jun 1996].iso / Aminet / dev / c / PhoneLogDevKit.lha / PhoneLog / src / PhoneLogScanner.c < prev    next >
Encoding:
C/C++ Source or Header  |  1996-03-16  |  44.3 KB  |  2,480 lines

  1. /* $Id: Scanner.c,v 2.16 1992/08/18 09:05:32 grosch rel $ */
  2.  
  3. # define bool        char
  4. # define true        1
  5. # define false        0
  6. # define StdIn        0
  7.  
  8. # include "PhoneLogScanner.h"
  9. # include "PhoneLogScannerSource.h"
  10. # include "System.h"
  11. # include "General.h"
  12. # include "DynArray.h"
  13. # include "Positions.h"
  14. # include <stdio.h>
  15.  
  16. #  include <stdlib.h>
  17.  
  18. # define yyTabSpace    8
  19.  
  20. # define yyStart(State)    { yyPreviousStart = yyStartState; yyStartState = State; }
  21. # define yyPrevious    { yyStateRange s = yyStartState; \
  22.              yyStartState = yyPreviousStart; yyPreviousStart = s; }
  23. # define yyEcho        { char * yyEnd = PhoneLogScanner_TokenPtr + PhoneLogScanner_TokenLength; \
  24.             char yyCh = * yyEnd; * yyEnd = '\0'; \
  25.              (void) fputs (PhoneLogScanner_TokenPtr, stdout); * yyEnd = yyCh; }
  26. # define yyLess(n)    { yyChBufferIndex -= PhoneLogScanner_TokenLength - n; PhoneLogScanner_TokenLength = n; }
  27. # define yyTab        yyLineStart -= yyTabSpace - 1 - ((unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart - 1) % yyTabSpace
  28. # define yyTab1(a)    yyLineStart -= yyTabSpace - 1 - ((unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart + a - 1) % yyTabSpace
  29. # define yyTab2(a,b)    yyLineStart -= yyTabSpace - 1 - ((unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart + a - 1) % yyTabSpace
  30. # define yyEol(Column)    { yyLineCount ++; yyLineStart = yyChBufferIndex - 1 - Column; }
  31. # define output(c)    (void) putchar ((int) c)
  32. # define unput(c)    * (-- yyChBufferIndex) = c
  33.  
  34. # define yyDNoState        0
  35. # define yyFileStackSize    16
  36. # define yyInitBufferSize    1024 * 8 + 256
  37. # define yyFirstCh    (unsigned char) '\0'
  38. # define yyLastCh    (unsigned char) '\377'
  39. # define yyEolCh    (unsigned char) '\12'
  40. # define yyEobCh    (unsigned char) '\177'
  41. # define yyDStateCount    250
  42. # define yyTableSize    735
  43. # define yyEobState    8
  44. # define yyDefaultState    9
  45. # define STD    1
  46. # define TEXT    3
  47.  
  48. static void yyExit (void) { Exit (1); }
  49.  
  50. typedef unsigned short    yyStateRange;
  51. typedef struct { yyStateRange yyCheck, yyNext; } yyCombType;
  52.  
  53.     char *        PhoneLogScanner_TokenPtr    ;
  54.     short        PhoneLogScanner_TokenLength    ;
  55.     PhoneLogScanner_tScanAttribute    PhoneLogScanner_Attribute    ;
  56.     void        (* PhoneLogScanner_Exit) (void) = yyExit;
  57.  
  58. static    yyCombType    yyComb        [yyTableSize   + 1] = {{1, 0},
  59. {0, 0},
  60. {0, 0},
  61. {0, 0},
  62. {0, 0},
  63. {0, 0},
  64. {0, 0},
  65. {0, 0},
  66. {0, 0},
  67. {1, 12},
  68. {1, 10},
  69. {0, 0},
  70. {3, 13},
  71. {3, 11},
  72. {0, 0},
  73. {0, 0},
  74. {0, 0},
  75. {0, 0},
  76. {0, 0},
  77. {0, 0},
  78. {0, 0},
  79. {0, 0},
  80. {0, 0},
  81. {0, 0},
  82. {0, 0},
  83. {0, 0},
  84. {0, 0},
  85. {0, 0},
  86. {0, 0},
  87. {0, 0},
  88. {0, 0},
  89. {0, 0},
  90. {1, 14},
  91. {0, 0},
  92. {0, 0},
  93. {3, 15},
  94. {0, 0},
  95. {0, 0},
  96. {0, 0},
  97. {0, 0},
  98. {0, 0},
  99. {0, 0},
  100. {0, 0},
  101. {0, 0},
  102. {0, 0},
  103. {0, 0},
  104. {0, 0},
  105. {16, 17},
  106. {6, 6},
  107. {6, 6},
  108. {6, 6},
  109. {6, 6},
  110. {6, 6},
  111. {6, 6},
  112. {6, 6},
  113. {6, 6},
  114. {6, 6},
  115. {6, 6},
  116. {0, 0},
  117. {0, 0},
  118. {1, 91},
  119. {1, 75},
  120. {1, 74},
  121. {3, 16},
  122. {24, 25},
  123. {22, 23},
  124. {27, 28},
  125. {31, 32},
  126. {17, 53},
  127. {26, 27},
  128. {18, 42},
  129. {20, 21},
  130. {17, 58},
  131. {33, 34},
  132. {37, 38},
  133. {35, 36},
  134. {39, 40},
  135. {17, 33},
  136. {17, 67},
  137. {19, 20},
  138. {17, 18},
  139. {23, 24},
  140. {17, 26},
  141. {18, 19},
  142. {17, 48},
  143. {21, 22},
  144. {28, 29},
  145. {29, 30},
  146. {30, 31},
  147. {34, 35},
  148. {36, 37},
  149. {38, 39},
  150. {40, 41},
  151. {42, 43},
  152. {43, 44},
  153. {44, 45},
  154. {45, 46},
  155. {46, 47},
  156. {48, 49},
  157. {49, 50},
  158. {50, 51},
  159. {51, 52},
  160. {53, 54},
  161. {54, 55},
  162. {55, 56},
  163. {56, 57},
  164. {58, 59},
  165. {59, 60},
  166. {60, 61},
  167. {61, 62},
  168. {62, 63},
  169. {63, 64},
  170. {64, 65},
  171. {65, 66},
  172. {1, 76},
  173. {67, 68},
  174. {68, 69},
  175. {69, 70},
  176. {1, 84},
  177. {5, 5},
  178. {5, 5},
  179. {5, 5},
  180. {5, 5},
  181. {5, 5},
  182. {5, 5},
  183. {5, 5},
  184. {5, 5},
  185. {5, 5},
  186. {5, 5},
  187. {5, 5},
  188. {5, 5},
  189. {5, 5},
  190. {5, 5},
  191. {5, 5},
  192. {5, 5},
  193. {5, 5},
  194. {5, 5},
  195. {5, 5},
  196. {5, 5},
  197. {5, 5},
  198. {5, 5},
  199. {5, 5},
  200. {5, 5},
  201. {5, 5},
  202. {5, 5},
  203. {5, 5},
  204. {5, 5},
  205. {5, 5},
  206. {5, 5},
  207. {5, 5},
  208. {5, 5},
  209. {5, 5},
  210. {5, 5},
  211. {5, 5},
  212. {5, 5},
  213. {5, 5},
  214. {5, 5},
  215. {5, 5},
  216. {5, 5},
  217. {5, 5},
  218. {5, 5},
  219. {5, 5},
  220. {5, 5},
  221. {5, 5},
  222. {5, 5},
  223. {5, 5},
  224. {5, 5},
  225. {5, 5},
  226. {5, 5},
  227. {5, 5},
  228. {5, 5},
  229. {5, 5},
  230. {5, 5},
  231. {5, 5},
  232. {5, 5},
  233. {5, 5},
  234. {5, 5},
  235. {5, 5},
  236. {5, 5},
  237. {7, 8},
  238. {5, 5},
  239. {5, 5},
  240. {5, 5},
  241. {5, 5},
  242. {5, 5},
  243. {5, 5},
  244. {5, 5},
  245. {5, 5},
  246. {5, 5},
  247. {5, 5},
  248. {5, 5},
  249. {5, 5},
  250. {5, 5},
  251. {5, 5},
  252. {5, 5},
  253. {5, 5},
  254. {5, 5},
  255. {5, 5},
  256. {5, 5},
  257. {5, 5},
  258. {5, 5},
  259. {5, 5},
  260. {5, 5},
  261. {5, 5},
  262. {5, 5},
  263. {5, 5},
  264. {5, 5},
  265. {5, 5},
  266. {5, 5},
  267. {5, 5},
  268. {5, 5},
  269. {5, 5},
  270. {5, 5},
  271. {5, 5},
  272. {5, 5},
  273. {5, 5},
  274. {5, 5},
  275. {5, 5},
  276. {5, 5},
  277. {5, 5},
  278. {5, 5},
  279. {5, 5},
  280. {5, 5},
  281. {5, 5},
  282. {5, 5},
  283. {5, 5},
  284. {5, 5},
  285. {5, 5},
  286. {5, 5},
  287. {5, 5},
  288. {5, 5},
  289. {5, 5},
  290. {5, 5},
  291. {5, 5},
  292. {5, 5},
  293. {5, 5},
  294. {5, 5},
  295. {5, 5},
  296. {5, 5},
  297. {5, 5},
  298. {5, 5},
  299. {5, 5},
  300. {5, 5},
  301. {5, 5},
  302. {5, 5},
  303. {5, 5},
  304. {70, 71},
  305. {5, 5},
  306. {5, 5},
  307. {5, 5},
  308. {5, 5},
  309. {5, 5},
  310. {5, 5},
  311. {5, 5},
  312. {5, 5},
  313. {5, 5},
  314. {5, 5},
  315. {5, 5},
  316. {5, 5},
  317. {5, 5},
  318. {5, 5},
  319. {5, 5},
  320. {5, 5},
  321. {5, 5},
  322. {5, 5},
  323. {5, 5},
  324. {5, 5},
  325. {5, 5},
  326. {5, 5},
  327. {5, 5},
  328. {5, 5},
  329. {5, 5},
  330. {5, 5},
  331. {5, 5},
  332. {5, 5},
  333. {5, 5},
  334. {5, 5},
  335. {5, 5},
  336. {5, 5},
  337. {5, 5},
  338. {5, 5},
  339. {5, 5},
  340. {5, 5},
  341. {5, 5},
  342. {5, 5},
  343. {5, 5},
  344. {5, 5},
  345. {5, 5},
  346. {5, 5},
  347. {5, 5},
  348. {5, 5},
  349. {5, 5},
  350. {5, 5},
  351. {5, 5},
  352. {5, 5},
  353. {5, 5},
  354. {5, 5},
  355. {5, 5},
  356. {5, 5},
  357. {5, 5},
  358. {5, 5},
  359. {5, 5},
  360. {5, 5},
  361. {5, 5},
  362. {5, 5},
  363. {5, 5},
  364. {5, 5},
  365. {5, 5},
  366. {5, 5},
  367. {5, 5},
  368. {5, 5},
  369. {5, 5},
  370. {5, 5},
  371. {5, 5},
  372. {5, 5},
  373. {5, 5},
  374. {5, 5},
  375. {5, 5},
  376. {5, 5},
  377. {5, 5},
  378. {5, 5},
  379. {5, 5},
  380. {5, 5},
  381. {5, 5},
  382. {5, 5},
  383. {5, 5},
  384. {5, 5},
  385. {5, 5},
  386. {5, 5},
  387. {5, 5},
  388. {5, 5},
  389. {5, 5},
  390. {5, 5},
  391. {5, 5},
  392. {5, 5},
  393. {5, 5},
  394. {5, 5},
  395. {5, 5},
  396. {5, 5},
  397. {5, 5},
  398. {5, 5},
  399. {5, 5},
  400. {5, 5},
  401. {5, 5},
  402. {5, 5},
  403. {5, 5},
  404. {5, 5},
  405. {5, 5},
  406. {5, 5},
  407. {5, 5},
  408. {5, 5},
  409. {5, 5},
  410. {5, 5},
  411. {5, 5},
  412. {5, 5},
  413. {5, 5},
  414. {5, 5},
  415. {5, 5},
  416. {5, 5},
  417. {5, 5},
  418. {5, 5},
  419. {5, 5},
  420. {5, 5},
  421. {5, 5},
  422. {5, 5},
  423. {5, 5},
  424. {5, 5},
  425. {5, 5},
  426. {5, 5},
  427. {5, 5},
  428. {5, 5},
  429. {5, 5},
  430. {5, 5},
  431. {5, 5},
  432. {5, 5},
  433. {71, 72},
  434. {72, 73},
  435. {76, 77},
  436. {77, 78},
  437. {78, 79},
  438. {79, 80},
  439. {80, 81},
  440. {81, 82},
  441. {82, 83},
  442. {84, 85},
  443. {85, 86},
  444. {86, 87},
  445. {87, 88},
  446. {88, 89},
  447. {89, 90},
  448. {91, 92},
  449. {92, 164},
  450. {92, 174},
  451. {93, 94},
  452. {94, 95},
  453. {92, 194},
  454. {95, 96},
  455. {96, 97},
  456. {97, 98},
  457. {98, 99},
  458. {92, 107},
  459. {92, 212},
  460. {100, 101},
  461. {92, 125},
  462. {101, 102},
  463. {92, 93},
  464. {92, 182},
  465. {92, 154},
  466. {102, 103},
  467. {103, 104},
  468. {104, 105},
  469. {91, 169},
  470. {91, 178},
  471. {105, 106},
  472. {107, 108},
  473. {91, 203},
  474. {108, 109},
  475. {109, 110},
  476. {110, 140},
  477. {111, 112},
  478. {91, 116},
  479. {91, 219},
  480. {112, 113},
  481. {91, 133},
  482. {113, 114},
  483. {91, 100},
  484. {91, 188},
  485. {91, 159},
  486. {114, 115},
  487. {116, 117},
  488. {117, 118},
  489. {118, 119},
  490. {119, 141},
  491. {120, 121},
  492. {110, 111},
  493. {121, 122},
  494. {122, 123},
  495. {123, 124},
  496. {125, 142},
  497. {126, 127},
  498. {127, 128},
  499. {125, 236},
  500. {128, 129},
  501. {129, 130},
  502. {130, 131},
  503. {131, 132},
  504. {133, 148},
  505. {134, 135},
  506. {119, 120},
  507. {133, 244},
  508. {135, 136},
  509. {125, 126},
  510. {136, 137},
  511. {137, 138},
  512. {138, 139},
  513. {142, 143},
  514. {143, 144},
  515. {144, 145},
  516. {145, 146},
  517. {133, 134},
  518. {146, 147},
  519. {148, 149},
  520. {149, 150},
  521. {150, 151},
  522. {151, 152},
  523. {152, 153},
  524. {154, 155},
  525. {155, 156},
  526. {156, 157},
  527. {157, 158},
  528. {159, 160},
  529. {160, 161},
  530. {161, 162},
  531. {162, 163},
  532. {164, 165},
  533. {165, 166},
  534. {166, 167},
  535. {167, 168},
  536. {169, 170},
  537. {170, 171},
  538. {171, 172},
  539. {172, 173},
  540. {174, 175},
  541. {175, 176},
  542. {176, 177},
  543. {178, 179},
  544. {179, 180},
  545. {180, 181},
  546. {182, 183},
  547. {183, 184},
  548. {184, 185},
  549. {185, 186},
  550. {186, 187},
  551. {188, 189},
  552. {189, 190},
  553. {190, 191},
  554. {191, 192},
  555. {192, 193},
  556. {194, 195},
  557. {175, 228},
  558. {195, 196},
  559. {196, 197},
  560. {179, 232},
  561. {197, 226},
  562. {198, 199},
  563. {199, 200},
  564. {200, 201},
  565. {201, 202},
  566. {203, 204},
  567. {204, 205},
  568. {205, 206},
  569. {206, 227},
  570. {207, 208},
  571. {208, 209},
  572. {209, 210},
  573. {210, 211},
  574. {212, 213},
  575. {213, 214},
  576. {214, 215},
  577. {197, 198},
  578. {215, 216},
  579. {216, 217},
  580. {217, 218},
  581. {219, 220},
  582. {220, 221},
  583. {221, 222},
  584. {222, 223},
  585. {206, 207},
  586. {223, 224},
  587. {224, 225},
  588. {228, 229},
  589. {229, 230},
  590. {230, 231},
  591. {232, 233},
  592. {233, 234},
  593. {234, 235},
  594. {236, 237},
  595. {237, 238},
  596. {238, 239},
  597. {239, 240},
  598. {240, 241},
  599. {241, 242},
  600. {242, 243},
  601. {244, 245},
  602. {245, 246},
  603. {246, 247},
  604. {247, 248},
  605. {248, 249},
  606. {249, 250},
  607. {0, 0},
  608. {0, 0},
  609. {0, 0},
  610. {0, 0},
  611. {0, 0},
  612. {0, 0},
  613. {0, 0},
  614. {0, 0},
  615. {0, 0},
  616. {0, 0},
  617. {0, 0},
  618. {0, 0},
  619. {0, 0},
  620. {0, 0},
  621. {0, 0},
  622. {0, 0},
  623. {0, 0},
  624. {0, 0},
  625. {0, 0},
  626. {0, 0},
  627. {0, 0},
  628. {0, 0},
  629. {0, 0},
  630. {0, 0},
  631. {0, 0},
  632. {0, 0},
  633. {0, 0},
  634. {0, 0},
  635. {0, 0},
  636. {0, 0},
  637. {0, 0},
  638. {0, 0},
  639. {0, 0},
  640. {0, 0},
  641. {0, 0},
  642. {0, 0},
  643. {0, 0},
  644. {0, 0},
  645. {0, 0},
  646. {0, 0},
  647. {0, 0},
  648. {0, 0},
  649. {0, 0},
  650. {0, 0},
  651. {0, 0},
  652. {0, 0},
  653. {0, 0},
  654. {0, 0},
  655. {0, 0},
  656. {0, 0},
  657. {0, 0},
  658. {0, 0},
  659. {0, 0},
  660. {0, 0},
  661. {0, 0},
  662. {0, 0},
  663. {0, 0},
  664. {0, 0},
  665. {0, 0},
  666. {0, 0},
  667. {0, 0},
  668. {0, 0},
  669. {0, 0},
  670. {0, 0},
  671. {0, 0},
  672. {0, 0},
  673. {0, 0},
  674. {0, 0},
  675. {0, 0},
  676. {0, 0},
  677. {0, 0},
  678. {0, 0},
  679. {0, 0},
  680. {0, 0},
  681. {0, 0},
  682. {0, 0},
  683. {0, 0},
  684. {0, 0},
  685. {0, 0},
  686. {0, 0},
  687. {0, 0},
  688. {0, 0},
  689. {0, 0},
  690. {0, 0},
  691. {0, 0},
  692. {0, 0},
  693. {0, 0},
  694. {0, 0},
  695. {0, 0},
  696. {0, 0},
  697. {0, 0},
  698. {0, 0},
  699. {0, 0},
  700. {0, 0},
  701. {0, 0},
  702. {0, 0},
  703. {0, 0},
  704. {0, 0},
  705. {0, 0},
  706. {0, 0},
  707. {0, 0},
  708. {0, 0},
  709. {0, 0},
  710. {0, 0},
  711. {0, 0},
  712. {0, 0},
  713. {0, 0},
  714. {0, 0},
  715. {0, 0},
  716. {0, 0},
  717. {0, 0},
  718. {0, 0},
  719. {0, 0},
  720. {0, 0},
  721. {0, 0},
  722. {0, 0},
  723. {0, 0},
  724. {0, 0},
  725. {0, 0},
  726. {0, 0},
  727. {0, 0},
  728. {0, 0},
  729. {0, 0},
  730. {0, 0},
  731. {0, 0},
  732. {0, 0},
  733. {0, 0},
  734. {0, 0},
  735. {0, 0},
  736. {0, 0},
  737. {0, 0},
  738. {0, 0},
  739. {0, 0},
  740. {0, 0},
  741. {0, 0},
  742. {0, 0},
  743. {0, 0},
  744. {0, 0},
  745. {0, 0},
  746. {0, 0},
  747. {0, 0},
  748. {0, 0},
  749. {0, 0},
  750. {0, 0},
  751. {0, 0},
  752. {0, 0},
  753. {0, 0},
  754. {0, 0},
  755. {0, 0},
  756. {0, 0},
  757. {0, 0},
  758. {0, 0},
  759. {0, 0},
  760. {0, 0},
  761. {0, 0},
  762. {0, 0},
  763. {0, 0},
  764. {0, 0},
  765. {0, 0},
  766. {0, 0},
  767. {0, 0},
  768. {0, 0},
  769. {0, 0},
  770. {0, 0},
  771. {0, 0},
  772. {0, 0},
  773. {0, 0},
  774. {0, 0},
  775. {0, 0},
  776. {0, 0},
  777. {0, 0},
  778. {0, 0},
  779. {0, 0},
  780. {0, 0},
  781. {0, 0},
  782. {0, 0},
  783. {0, 0},
  784. {0, 0},
  785. {0, 0},
  786. {0, 0},
  787. {0, 0},
  788. {0, 0},
  789. {0, 0},
  790. {0, 0},
  791. {0, 0},
  792. {0, 0},
  793. {0, 0},
  794. };
  795. static    yyCombType *    yyBasePtr    [yyDStateCount + 1] = {& yyComb [0],
  796. & yyComb [0],
  797. & yyComb [0],
  798. & yyComb [3],
  799. & yyComb [0],
  800. & yyComb [119],
  801. & yyComb [0],
  802. & yyComb [52],
  803. & yyComb [0],
  804. & yyComb [0],
  805. & yyComb [0],
  806. & yyComb [0],
  807. & yyComb [0],
  808. & yyComb [0],
  809. & yyComb [0],
  810. & yyComb [0],
  811. & yyComb [0],
  812. & yyComb [0],
  813. & yyComb [1],
  814. & yyComb [0],
  815. & yyComb [0],
  816. & yyComb [3],
  817. & yyComb [0],
  818. & yyComb [4],
  819. & yyComb [2],
  820. & yyComb [0],
  821. & yyComb [0],
  822. & yyComb [1],
  823. & yyComb [3],
  824. & yyComb [8],
  825. & yyComb [10],
  826. & yyComb [5],
  827. & yyComb [0],
  828. & yyComb [8],
  829. & yyComb [7],
  830. & yyComb [0],
  831. & yyComb [12],
  832. & yyComb [9],
  833. & yyComb [14],
  834. & yyComb [7],
  835. & yyComb [30],
  836. & yyComb [0],
  837. & yyComb [11],
  838. & yyComb [21],
  839. & yyComb [16],
  840. & yyComb [28],
  841. & yyComb [35],
  842. & yyComb [0],
  843. & yyComb [25],
  844. & yyComb [22],
  845. & yyComb [31],
  846. & yyComb [39],
  847. & yyComb [0],
  848. & yyComb [37],
  849. & yyComb [19],
  850. & yyComb [35],
  851. & yyComb [43],
  852. & yyComb [0],
  853. & yyComb [27],
  854. & yyComb [24],
  855. & yyComb [24],
  856. & yyComb [31],
  857. & yyComb [45],
  858. & yyComb [34],
  859. & yyComb [43],
  860. & yyComb [51],
  861. & yyComb [0],
  862. & yyComb [30],
  863. & yyComb [39],
  864. & yyComb [51],
  865. & yyComb [177],
  866. & yyComb [293],
  867. & yyComb [314],
  868. & yyComb [0],
  869. & yyComb [0],
  870. & yyComb [0],
  871. & yyComb [276],
  872. & yyComb [260],
  873. & yyComb [274],
  874. & yyComb [265],
  875. & yyComb [276],
  876. & yyComb [271],
  877. & yyComb [273],
  878. & yyComb [0],
  879. & yyComb [283],
  880. & yyComb [271],
  881. & yyComb [271],
  882. & yyComb [282],
  883. & yyComb [277],
  884. & yyComb [279],
  885. & yyComb [0],
  886. & yyComb [343],
  887. & yyComb [323],
  888. & yyComb [324],
  889. & yyComb [329],
  890. & yyComb [313],
  891. & yyComb [318],
  892. & yyComb [320],
  893. & yyComb [337],
  894. & yyComb [0],
  895. & yyComb [333],
  896. & yyComb [339],
  897. & yyComb [325],
  898. & yyComb [330],
  899. & yyComb [332],
  900. & yyComb [351],
  901. & yyComb [0],
  902. & yyComb [349],
  903. & yyComb [334],
  904. & yyComb [342],
  905. & yyComb [356],
  906. & yyComb [354],
  907. & yyComb [345],
  908. & yyComb [355],
  909. & yyComb [366],
  910. & yyComb [0],
  911. & yyComb [364],
  912. & yyComb [348],
  913. & yyComb [356],
  914. & yyComb [370],
  915. & yyComb [368],
  916. & yyComb [358],
  917. & yyComb [367],
  918. & yyComb [375],
  919. & yyComb [0],
  920. & yyComb [369],
  921. & yyComb [360],
  922. & yyComb [369],
  923. & yyComb [360],
  924. & yyComb [378],
  925. & yyComb [367],
  926. & yyComb [383],
  927. & yyComb [0],
  928. & yyComb [377],
  929. & yyComb [368],
  930. & yyComb [379],
  931. & yyComb [370],
  932. & yyComb [388],
  933. & yyComb [377],
  934. & yyComb [0],
  935. & yyComb [0],
  936. & yyComb [0],
  937. & yyComb [373],
  938. & yyComb [383],
  939. & yyComb [378],
  940. & yyComb [390],
  941. & yyComb [398],
  942. & yyComb [0],
  943. & yyComb [379],
  944. & yyComb [389],
  945. & yyComb [384],
  946. & yyComb [396],
  947. & yyComb [403],
  948. & yyComb [0],
  949. & yyComb [393],
  950. & yyComb [390],
  951. & yyComb [399],
  952. & yyComb [407],
  953. & yyComb [0],
  954. & yyComb [397],
  955. & yyComb [394],
  956. & yyComb [403],
  957. & yyComb [411],
  958. & yyComb [0],
  959. & yyComb [409],
  960. & yyComb [391],
  961. & yyComb [407],
  962. & yyComb [415],
  963. & yyComb [0],
  964. & yyComb [413],
  965. & yyComb [395],
  966. & yyComb [411],
  967. & yyComb [419],
  968. & yyComb [0],
  969. & yyComb [404],
  970. & yyComb [415],
  971. & yyComb [422],
  972. & yyComb [0],
  973. & yyComb [407],
  974. & yyComb [418],
  975. & yyComb [425],
  976. & yyComb [0],
  977. & yyComb [404],
  978. & yyComb [424],
  979. & yyComb [408],
  980. & yyComb [407],
  981. & yyComb [430],
  982. & yyComb [0],
  983. & yyComb [409],
  984. & yyComb [429],
  985. & yyComb [413],
  986. & yyComb [412],
  987. & yyComb [435],
  988. & yyComb [0],
  989. & yyComb [419],
  990. & yyComb [417],
  991. & yyComb [417],
  992. & yyComb [441],
  993. & yyComb [439],
  994. & yyComb [428],
  995. & yyComb [437],
  996. & yyComb [445],
  997. & yyComb [0],
  998. & yyComb [429],
  999. & yyComb [426],
  1000. & yyComb [426],
  1001. & yyComb [449],
  1002. & yyComb [447],
  1003. & yyComb [436],
  1004. & yyComb [445],
  1005. & yyComb [453],
  1006. & yyComb [0],
  1007. & yyComb [431],
  1008. & yyComb [440],
  1009. & yyComb [452],
  1010. & yyComb [451],
  1011. & yyComb [439],
  1012. & yyComb [460],
  1013. & yyComb [0],
  1014. & yyComb [438],
  1015. & yyComb [447],
  1016. & yyComb [459],
  1017. & yyComb [457],
  1018. & yyComb [446],
  1019. & yyComb [467],
  1020. & yyComb [0],
  1021. & yyComb [0],
  1022. & yyComb [0],
  1023. & yyComb [448],
  1024. & yyComb [442],
  1025. & yyComb [470],
  1026. & yyComb [0],
  1027. & yyComb [451],
  1028. & yyComb [445],
  1029. & yyComb [473],
  1030. & yyComb [0],
  1031. & yyComb [457],
  1032. & yyComb [459],
  1033. & yyComb [469],
  1034. & yyComb [463],
  1035. & yyComb [461],
  1036. & yyComb [470],
  1037. & yyComb [480],
  1038. & yyComb [0],
  1039. & yyComb [464],
  1040. & yyComb [466],
  1041. & yyComb [476],
  1042. & yyComb [470],
  1043. & yyComb [468],
  1044. & yyComb [477],
  1045. & yyComb [0],
  1046. };
  1047. static    yyStateRange    yyDefault    [yyDStateCount + 1] = {0,
  1048. 6,
  1049. 1,
  1050. 5,
  1051. 3,
  1052. 7,
  1053. 7,
  1054. 0,
  1055. 0,
  1056. 0,
  1057. 0,
  1058. 5,
  1059. 0,
  1060. 5,
  1061. 0,
  1062. 5,
  1063. 7,
  1064. 7,
  1065. 7,
  1066. 7,
  1067. 7,
  1068. 7,
  1069. 7,
  1070. 7,
  1071. 7,
  1072. 0,
  1073. 7,
  1074. 7,
  1075. 7,
  1076. 7,
  1077. 7,
  1078. 7,
  1079. 0,
  1080. 7,
  1081. 7,
  1082. 7,
  1083. 7,
  1084. 7,
  1085. 7,
  1086. 7,
  1087. 7,
  1088. 0,
  1089. 7,
  1090. 7,
  1091. 7,
  1092. 7,
  1093. 7,
  1094. 0,
  1095. 7,
  1096. 7,
  1097. 7,
  1098. 7,
  1099. 0,
  1100. 7,
  1101. 7,
  1102. 7,
  1103. 7,
  1104. 0,
  1105. 7,
  1106. 7,
  1107. 7,
  1108. 7,
  1109. 7,
  1110. 7,
  1111. 7,
  1112. 7,
  1113. 0,
  1114. 7,
  1115. 7,
  1116. 7,
  1117. 7,
  1118. 7,
  1119. 7,
  1120. 0,
  1121. 0,
  1122. 0,
  1123. 7,
  1124. 7,
  1125. 7,
  1126. 7,
  1127. 7,
  1128. 7,
  1129. 7,
  1130. 0,
  1131. 7,
  1132. 7,
  1133. 7,
  1134. 7,
  1135. 7,
  1136. 7,
  1137. 0,
  1138. 7,
  1139. 7,
  1140. 7,
  1141. 7,
  1142. 7,
  1143. 7,
  1144. 7,
  1145. 7,
  1146. 0,
  1147. 7,
  1148. 7,
  1149. 7,
  1150. 7,
  1151. 7,
  1152. 7,
  1153. 0,
  1154. 7,
  1155. 7,
  1156. 7,
  1157. 7,
  1158. 7,
  1159. 7,
  1160. 7,
  1161. 7,
  1162. 0,
  1163. 7,
  1164. 7,
  1165. 7,
  1166. 7,
  1167. 7,
  1168. 7,
  1169. 7,
  1170. 7,
  1171. 0,
  1172. 7,
  1173. 7,
  1174. 7,
  1175. 7,
  1176. 7,
  1177. 7,
  1178. 7,
  1179. 0,
  1180. 7,
  1181. 7,
  1182. 7,
  1183. 7,
  1184. 7,
  1185. 7,
  1186. 0,
  1187. 0,
  1188. 0,
  1189. 7,
  1190. 7,
  1191. 7,
  1192. 7,
  1193. 7,
  1194. 0,
  1195. 7,
  1196. 7,
  1197. 7,
  1198. 7,
  1199. 7,
  1200. 0,
  1201. 7,
  1202. 7,
  1203. 7,
  1204. 7,
  1205. 0,
  1206. 7,
  1207. 7,
  1208. 7,
  1209. 7,
  1210. 0,
  1211. 7,
  1212. 7,
  1213. 7,
  1214. 7,
  1215. 0,
  1216. 7,
  1217. 7,
  1218. 7,
  1219. 7,
  1220. 0,
  1221. 7,
  1222. 7,
  1223. 7,
  1224. 0,
  1225. 7,
  1226. 7,
  1227. 7,
  1228. 0,
  1229. 7,
  1230. 7,
  1231. 7,
  1232. 7,
  1233. 7,
  1234. 0,
  1235. 7,
  1236. 7,
  1237. 7,
  1238. 7,
  1239. 7,
  1240. 0,
  1241. 7,
  1242. 7,
  1243. 7,
  1244. 7,
  1245. 7,
  1246. 7,
  1247. 7,
  1248. 7,
  1249. 0,
  1250. 7,
  1251. 7,
  1252. 7,
  1253. 7,
  1254. 7,
  1255. 7,
  1256. 7,
  1257. 7,
  1258. 0,
  1259. 7,
  1260. 7,
  1261. 7,
  1262. 7,
  1263. 7,
  1264. 7,
  1265. 0,
  1266. 7,
  1267. 7,
  1268. 7,
  1269. 7,
  1270. 7,
  1271. 7,
  1272. 0,
  1273. 0,
  1274. 0,
  1275. 7,
  1276. 7,
  1277. 7,
  1278. 0,
  1279. 7,
  1280. 7,
  1281. 7,
  1282. 0,
  1283. 7,
  1284. 7,
  1285. 7,
  1286. 7,
  1287. 7,
  1288. 7,
  1289. 7,
  1290. 0,
  1291. 7,
  1292. 7,
  1293. 7,
  1294. 7,
  1295. 7,
  1296. 7,
  1297. 0,
  1298. };
  1299. static    yyStateRange    yyEobTrans    [yyDStateCount + 1] = {0,
  1300. 0,
  1301. 0,
  1302. 5,
  1303. 5,
  1304. 5,
  1305. 0,
  1306. 0,
  1307. 0,
  1308. 0,
  1309. 0,
  1310. 5,
  1311. 0,
  1312. 5,
  1313. 0,
  1314. 5,
  1315. 0,
  1316. 0,
  1317. 0,
  1318. 0,
  1319. 0,
  1320. 0,
  1321. 0,
  1322. 0,
  1323. 0,
  1324. 0,
  1325. 0,
  1326. 0,
  1327. 0,
  1328. 0,
  1329. 0,
  1330. 0,
  1331. 0,
  1332. 0,
  1333. 0,
  1334. 0,
  1335. 0,
  1336. 0,
  1337. 0,
  1338. 0,
  1339. 0,
  1340. 0,
  1341. 0,
  1342. 0,
  1343. 0,
  1344. 0,
  1345. 0,
  1346. 0,
  1347. 0,
  1348. 0,
  1349. 0,
  1350. 0,
  1351. 0,
  1352. 0,
  1353. 0,
  1354. 0,
  1355. 0,
  1356. 0,
  1357. 0,
  1358. 0,
  1359. 0,
  1360. 0,
  1361. 0,
  1362. 0,
  1363. 0,
  1364. 0,
  1365. 0,
  1366. 0,
  1367. 0,
  1368. 0,
  1369. 0,
  1370. 0,
  1371. 0,
  1372. 0,
  1373. 0,
  1374. 0,
  1375. 0,
  1376. 0,
  1377. 0,
  1378. 0,
  1379. 0,
  1380. 0,
  1381. 0,
  1382. 0,
  1383. 0,
  1384. 0,
  1385. 0,
  1386. 0,
  1387. 0,
  1388. 0,
  1389. 0,
  1390. 0,
  1391. 0,
  1392. 0,
  1393. 0,
  1394. 0,
  1395. 0,
  1396. 0,
  1397. 0,
  1398. 0,
  1399. 0,
  1400. 0,
  1401. 0,
  1402. 0,
  1403. 0,
  1404. 0,
  1405. 0,
  1406. 0,
  1407. 0,
  1408. 0,
  1409. 0,
  1410. 0,
  1411. 0,
  1412. 0,
  1413. 0,
  1414. 0,
  1415. 0,
  1416. 0,
  1417. 0,
  1418. 0,
  1419. 0,
  1420. 0,
  1421. 0,
  1422. 0,
  1423. 0,
  1424. 0,
  1425. 0,
  1426. 0,
  1427. 0,
  1428. 0,
  1429. 0,
  1430. 0,
  1431. 0,
  1432. 0,
  1433. 0,
  1434. 0,
  1435. 0,
  1436. 0,
  1437. 0,
  1438. 0,
  1439. 0,
  1440. 0,
  1441. 0,
  1442. 0,
  1443. 0,
  1444. 0,
  1445. 0,
  1446. 0,
  1447. 0,
  1448. 0,
  1449. 0,
  1450. 0,
  1451. 0,
  1452. 0,
  1453. 0,
  1454. 0,
  1455. 0,
  1456. 0,
  1457. 0,
  1458. 0,
  1459. 0,
  1460. 0,
  1461. 0,
  1462. 0,
  1463. 0,
  1464. 0,
  1465. 0,
  1466. 0,
  1467. 0,
  1468. 0,
  1469. 0,
  1470. 0,
  1471. 0,
  1472. 0,
  1473. 0,
  1474. 0,
  1475. 0,
  1476. 0,
  1477. 0,
  1478. 0,
  1479. 0,
  1480. 0,
  1481. 0,
  1482. 0,
  1483. 0,
  1484. 0,
  1485. 0,
  1486. 0,
  1487. 0,
  1488. 0,
  1489. 0,
  1490. 0,
  1491. 0,
  1492. 0,
  1493. 0,
  1494. 0,
  1495. 0,
  1496. 0,
  1497. 0,
  1498. 0,
  1499. 0,
  1500. 0,
  1501. 0,
  1502. 0,
  1503. 0,
  1504. 0,
  1505. 0,
  1506. 0,
  1507. 0,
  1508. 0,
  1509. 0,
  1510. 0,
  1511. 0,
  1512. 0,
  1513. 0,
  1514. 0,
  1515. 0,
  1516. 0,
  1517. 0,
  1518. 0,
  1519. 0,
  1520. 0,
  1521. 0,
  1522. 0,
  1523. 0,
  1524. 0,
  1525. 0,
  1526. 0,
  1527. 0,
  1528. 0,
  1529. 0,
  1530. 0,
  1531. 0,
  1532. 0,
  1533. 0,
  1534. 0,
  1535. 0,
  1536. 0,
  1537. 0,
  1538. 0,
  1539. 0,
  1540. 0,
  1541. 0,
  1542. 0,
  1543. 0,
  1544. 0,
  1545. 0,
  1546. 0,
  1547. 0,
  1548. 0,
  1549. 0,
  1550. };
  1551.  
  1552. static    yyStateRange    yyInitStateStack [yyInitBufferSize] = {0};
  1553. static    yyStateRange *    yyStateStack    = yyInitStateStack;
  1554. static    unsigned long    yyStateStackSize= yyInitBufferSize;
  1555. static    yyStateRange    yyStartState    = 0;
  1556. static    yyStateRange    yyPreviousStart    = 1;
  1557.  
  1558. static  short        yySourceFile    ;
  1559. static    bool        yyEof        ;
  1560. static    unsigned char *    yyChBufferPtr    ;
  1561. static    unsigned char *    yyChBufferStart    ;
  1562. static    unsigned long    yyChBufferSize    ;
  1563. static    unsigned char *    yyChBufferIndex    = ((unsigned char *) yyComb) + 2; /* dirty trick */
  1564. static    int        yyBytesRead    ;
  1565. static    int        yyLineCount    ;
  1566. static    unsigned char *    yyLineStart    ;
  1567.  
  1568. static    struct {
  1569.     short        yySourceFile    ;
  1570.     bool        yyEof        ;
  1571.     unsigned char *    yyChBufferPtr    ;
  1572.     unsigned char *    yyChBufferStart    ;
  1573.     unsigned long    yyChBufferSize    ;
  1574.     unsigned char *    yyChBufferIndex    ;
  1575.     int        yyBytesRead    ;
  1576.     int        yyLineCount    ;
  1577.     unsigned char *    yyLineStart    ;
  1578.     } yyFileStack [yyFileStackSize + 1], * yyFileStackPtr = yyFileStack;
  1579.  
  1580. static    char    yyToLower    [] = {
  1581. '\0', '\1', '\2', '\3', '\4', '\5', '\6', '\7',
  1582. '\10', '\11', '\12', '\13', '\14', '\15', '\16', '\17',
  1583. '\20', '\21', '\22', '\23', '\24', '\25', '\26', '\27',
  1584. '\30', '\31', '\32', '\33', '\34', '\35', '\36', '\37',
  1585. ' ', '!', '"', '#', '$', '%', '&', '\'', '(', ')', '*', '+', ',', '-', '.', '/',
  1586. '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?',
  1587. '@', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o',
  1588. 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '[', '\\', ']', '^', '_',
  1589. '`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o',
  1590. 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '{', '|', '}', '~', '\177',
  1591. '\200', '\201', '\202', '\203', '\204', '\205', '\206', '\207',
  1592. '\210', '\211', '\212', '\213', '\214', '\215', '\216', '\217',
  1593. '\220', '\221', '\222', '\223', '\224', '\225', '\226', '\227',
  1594. '\230', '\231', '\232', '\233', '\234', '\235', '\236', '\237',
  1595. '\240', '\241', '\242', '\243', '\244', '\245', '\246', '\247',
  1596. '\250', '\251', '\252', '\253', '\254', '\255', '\256', '\257',
  1597. '\260', '\261', '\262', '\263', '\264', '\265', '\266', '\267',
  1598. '\270', '\271', '\272', '\273', '\274', '\275', '\276', '\277',
  1599. '\300', '\301', '\302', '\303', '\304', '\305', '\306', '\307',
  1600. '\310', '\311', '\312', '\313', '\314', '\315', '\316', '\317',
  1601. '\320', '\321', '\322', '\323', '\324', '\325', '\326', '\327',
  1602. '\330', '\331', '\332', '\333', '\334', '\335', '\336', '\337',
  1603. '\340', '\341', '\342', '\343', '\344', '\345', '\346', '\347',
  1604. '\350', '\351', '\352', '\353', '\354', '\355', '\356', '\357',
  1605. '\360', '\361', '\362', '\363', '\364', '\365', '\366', '\367',
  1606. '\370', '\371', '\372', '\373', '\374', '\375', '\376', '\377',
  1607. };
  1608.  
  1609. static    char    yyToUpper    [] = {
  1610. '\0', '\1', '\2', '\3', '\4', '\5', '\6', '\7',
  1611. '\10', '\11', '\12', '\13', '\14', '\15', '\16', '\17',
  1612. '\20', '\21', '\22', '\23', '\24', '\25', '\26', '\27',
  1613. '\30', '\31', '\32', '\33', '\34', '\35', '\36', '\37',
  1614. ' ', '!', '"', '#', '$', '%', '&', '\'', '(', ')', '*', '+', ',', '-', '.', '/',
  1615. '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?',
  1616. '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O',
  1617. 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', '\\', ']', '^', '_',
  1618. '`', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O',
  1619. 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '{', '|', '}', '~', '\177',
  1620. '\200', '\201', '\202', '\203', '\204', '\205', '\206', '\207',
  1621. '\210', '\211', '\212', '\213', '\214', '\215', '\216', '\217',
  1622. '\220', '\221', '\222', '\223', '\224', '\225', '\226', '\227',
  1623. '\230', '\231', '\232', '\233', '\234', '\235', '\236', '\237',
  1624. '\240', '\241', '\242', '\243', '\244', '\245', '\246', '\247',
  1625. '\250', '\251', '\252', '\253', '\254', '\255', '\256', '\257',
  1626. '\260', '\261', '\262', '\263', '\264', '\265', '\266', '\267',
  1627. '\270', '\271', '\272', '\273', '\274', '\275', '\276', '\277',
  1628. '\300', '\301', '\302', '\303', '\304', '\305', '\306', '\307',
  1629. '\310', '\311', '\312', '\313', '\314', '\315', '\316', '\317',
  1630. '\320', '\321', '\322', '\323', '\324', '\325', '\326', '\327',
  1631. '\330', '\331', '\332', '\333', '\334', '\335', '\336', '\337',
  1632. '\340', '\341', '\342', '\343', '\344', '\345', '\346', '\347',
  1633. '\350', '\351', '\352', '\353', '\354', '\355', '\356', '\357',
  1634. '\360', '\361', '\362', '\363', '\364', '\365', '\366', '\367',
  1635. '\370', '\371', '\372', '\373', '\374', '\375', '\376', '\377',
  1636. };
  1637.  
  1638. static    void    yyInitialize    (void);
  1639. static    void    yyErrorMessage    (int yyErrorCode);
  1640. static    char    input        (void);
  1641. /* line 19 "PhoneLogScanner.rex" */
  1642. /* GLOBAL */
  1643.          /* #include <stdio.h> */
  1644.          #include <stdlib.h>
  1645.  
  1646.  
  1647.          unsigned short program = 0;
  1648.  
  1649.  
  1650.          void PhoneLogScanner_ErrorAttribute(int Token, PhoneLogScanner_tScanAttribute *Attribute)
  1651.           {
  1652.            switch(Token)
  1653.             {
  1654.              case 1  : Attribute->number = 0;
  1655.                        break;
  1656.              case 2  : Attribute->lexstring = PutString("UNKNOWN",7);
  1657.                        break;
  1658.              default :
  1659.                        break;
  1660.             }
  1661.           }
  1662.          /* GLOBAL */
  1663.  
  1664. int PhoneLogScanner_GetToken (void)
  1665. {
  1666.    register    yyStateRange    yyState;
  1667.    register    yyStateRange *    yyStatePtr;
  1668.    register    unsigned char * yyChBufferIndexReg;
  1669.    register    yyCombType * *    yyBasePtrReg = yyBasePtr;
  1670. /* line 41 "PhoneLogScanner.rex" */
  1671. /* LOCAL */
  1672.          char Word[256];
  1673.          int  length;
  1674.          /* LOCAL */
  1675.  
  1676. yyBegin:
  1677.    yyState        = yyStartState;        /* initialize */
  1678.    yyStatePtr        = & yyStateStack [1];
  1679.    yyChBufferIndexReg     = yyChBufferIndex;
  1680.    PhoneLogScanner_TokenPtr         = (char *) yyChBufferIndexReg;
  1681.  
  1682.    /* ASSERT yyChBuffer [yyChBufferIndex] == first character */
  1683.  
  1684. yyContinue:        /* continue after sentinel or skipping blanks */
  1685.    for (;;) {        /* execute as many state transitions as possible */
  1686.                     /* determine next state and get next character */
  1687.       register yyCombType * yyTablePtr = (yyBasePtrReg [yyState] + * yyChBufferIndexReg ++);
  1688.       if (yyTablePtr->yyCheck == yyState) {
  1689.      yyState = yyTablePtr->yyNext;
  1690.      * yyStatePtr ++ = yyState;        /* push state */
  1691.      goto yyContinue;
  1692.       }
  1693.       yyChBufferIndexReg --;            /* reconsider character */
  1694.       if ((yyState = yyDefault [yyState]) == yyDNoState) break;
  1695.    }
  1696.  
  1697.    for (;;) {                    /* search for last final state */
  1698.       PhoneLogScanner_TokenLength = yyChBufferIndexReg - (unsigned char *) PhoneLogScanner_TokenPtr;
  1699.       yyChBufferIndex = yyChBufferIndexReg;
  1700. switch (* -- yyStatePtr) {
  1701. case 250:;
  1702. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1703. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1704. /* line 71 "PhoneLogScanner.rex" */
  1705. {return(20);
  1706. } yy1: goto yyBegin;
  1707. case 243:;
  1708. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1709. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1710. /* line 72 "PhoneLogScanner.rex" */
  1711. {return(21);
  1712. } yy2: goto yyBegin;
  1713. case 235:;
  1714. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1715. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1716. /* line 73 "PhoneLogScanner.rex" */
  1717. {return(22);
  1718. } yy3: goto yyBegin;
  1719. case 231:;
  1720. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1721. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1722. /* line 74 "PhoneLogScanner.rex" */
  1723. {return(23);
  1724. } yy4: goto yyBegin;
  1725. case 227:;
  1726. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1727. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1728. /* line 75 "PhoneLogScanner.rex" */
  1729. {return(24);
  1730. } yy5: goto yyBegin;
  1731. case 226:;
  1732. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1733. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1734. /* line 76 "PhoneLogScanner.rex" */
  1735. {return(25);
  1736. } yy6: goto yyBegin;
  1737. case 225:;
  1738. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1739. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1740. /* line 77 "PhoneLogScanner.rex" */
  1741. {
  1742.                            yyStart(TEXT);
  1743.                            return(26);
  1744.                           
  1745. } yy7: goto yyBegin;
  1746. case 218:;
  1747. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1748. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1749. /* line 81 "PhoneLogScanner.rex" */
  1750. {return(27);
  1751. } yy8: goto yyBegin;
  1752. case 211:;
  1753. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1754. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1755. /* line 82 "PhoneLogScanner.rex" */
  1756. {
  1757.                            yyStart(TEXT);
  1758.                            return(28);
  1759.                           
  1760. } yy9: goto yyBegin;
  1761. case 202:;
  1762. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1763. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1764. /* line 86 "PhoneLogScanner.rex" */
  1765. {return(29);
  1766. } yy10: goto yyBegin;
  1767. case 193:;
  1768. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1769. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1770. /* line 87 "PhoneLogScanner.rex" */
  1771. {return(30);
  1772. } yy11: goto yyBegin;
  1773. case 187:;
  1774. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1775. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1776. /* line 88 "PhoneLogScanner.rex" */
  1777. {return(31);
  1778. } yy12: goto yyBegin;
  1779. case 181:;
  1780. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1781. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1782. /* line 89 "PhoneLogScanner.rex" */
  1783. {return(32);
  1784. } yy13: goto yyBegin;
  1785. case 177:;
  1786. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1787. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1788. /* line 90 "PhoneLogScanner.rex" */
  1789. {return(33);
  1790. } yy14: goto yyBegin;
  1791. case 173:;
  1792. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1793. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1794. /* line 91 "PhoneLogScanner.rex" */
  1795. {
  1796.                            yyStart(TEXT);
  1797.                            return(34);
  1798.                           
  1799. } yy15: goto yyBegin;
  1800. case 168:;
  1801. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1802. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1803. /* line 95 "PhoneLogScanner.rex" */
  1804. {return(35);
  1805. } yy16: goto yyBegin;
  1806. case 163:;
  1807. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1808. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1809. /* line 96 "PhoneLogScanner.rex" */
  1810. {
  1811.                            yyStart(TEXT);
  1812.                            return(36);
  1813.                           
  1814. } yy17: goto yyBegin;
  1815. case 158:;
  1816. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1817. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1818. /* line 100 "PhoneLogScanner.rex" */
  1819. {return(37);
  1820. } yy18: goto yyBegin;
  1821. case 153:;
  1822. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1823. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1824. /* line 101 "PhoneLogScanner.rex" */
  1825. {
  1826.                            yyStart(TEXT);
  1827.                            return(38);
  1828.                           
  1829. } yy19: goto yyBegin;
  1830. case 147:;
  1831. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1832. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1833. /* line 105 "PhoneLogScanner.rex" */
  1834. {return(39);
  1835. } yy20: goto yyBegin;
  1836. case 141:;
  1837. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1838. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1839. /* line 106 "PhoneLogScanner.rex" */
  1840. {return(40);
  1841. } yy21: goto yyBegin;
  1842. case 140:;
  1843. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1844. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1845. /* line 107 "PhoneLogScanner.rex" */
  1846. {return(41);
  1847. } yy22: goto yyBegin;
  1848. case 139:;
  1849. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1850. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1851. /* line 108 "PhoneLogScanner.rex" */
  1852. {
  1853.                            program=1;
  1854.                            return(42);
  1855.                           
  1856. } yy23: goto yyBegin;
  1857. case 132:;
  1858. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1859. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1860. /* line 112 "PhoneLogScanner.rex" */
  1861. {
  1862.                            program=0;
  1863.                            return(43);
  1864.                           
  1865. } yy24: goto yyBegin;
  1866. case 124:;
  1867. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1868. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1869. /* line 116 "PhoneLogScanner.rex" */
  1870. {
  1871.                            yyStart(TEXT);
  1872.                            return(44);
  1873.                           
  1874. } yy25: goto yyBegin;
  1875. case 115:;
  1876. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1877. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1878. /* line 120 "PhoneLogScanner.rex" */
  1879. {return(45);
  1880. } yy26: goto yyBegin;
  1881. case 106:;
  1882. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1883. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1884. /* line 121 "PhoneLogScanner.rex" */
  1885. {
  1886.                            yyStart(TEXT);
  1887.                            return(46);
  1888.                           
  1889. } yy27: goto yyBegin;
  1890. case 99:;
  1891. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1892. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1893. /* line 125 "PhoneLogScanner.rex" */
  1894. {return(47);
  1895. } yy28: goto yyBegin;
  1896. case 90:;
  1897. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1898. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1899. /* line 129 "PhoneLogScanner.rex" */
  1900. {return(80);
  1901. } yy29: goto yyBegin;
  1902. case 83:;
  1903. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1904. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1905. /* line 130 "PhoneLogScanner.rex" */
  1906. {return(81);
  1907. } yy30: goto yyBegin;
  1908. case 75:;
  1909. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1910. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1911. /* line 134 "PhoneLogScanner.rex" */
  1912. {return(10);
  1913. } yy31: goto yyBegin;
  1914. case 74:;
  1915. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1916. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1917. /* line 135 "PhoneLogScanner.rex" */
  1918. {
  1919.                            if (program)
  1920.                              yyStart(TEXT);
  1921.                            return(11);
  1922.                           
  1923. } yy32: goto yyBegin;
  1924. case 6:;
  1925. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1926. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1927. /* line 143 "PhoneLogScanner.rex" */
  1928. {
  1929.                            length = PhoneLogScanner_GetWord(Word);
  1930.                            PhoneLogScanner_Attribute.number = atoi(Word);
  1931.                            /* sscanf(Word,"%d",&PhoneLogScanner_Attribute.number); */
  1932.                            return(1);
  1933.                   
  1934. } yy33: goto yyBegin;
  1935. case 5:;
  1936. case 11:;
  1937. case 13:;
  1938. case 15:;
  1939. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1940. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1941. /* line 151 "PhoneLogScanner.rex" */
  1942. {
  1943.                            length = PhoneLogScanner_GetWord(Word);
  1944.                            PhoneLogScanner_Attribute.lexstring = PutString(Word,length);
  1945.                            yyPrevious;
  1946.                 return(2);
  1947.                    
  1948. } yy34: goto yyBegin;
  1949. case 73:;
  1950. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1951. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1952. /* line 157 "PhoneLogScanner.rex" */
  1953. {
  1954.                            PhoneLogScanner_Attribute.lexstring = PutString("",0);
  1955.                            yyPrevious;
  1956.                            return(27);
  1957.                           
  1958. } yy35: goto yyBegin;
  1959. case 66:;
  1960. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1961. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1962. /* line 162 "PhoneLogScanner.rex" */
  1963. {
  1964.                            PhoneLogScanner_Attribute.lexstring = PutString("",0);
  1965.                            yyPrevious;
  1966.                            return(29);
  1967.                           
  1968. } yy36: goto yyBegin;
  1969. case 57:;
  1970. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1971. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1972. /* line 167 "PhoneLogScanner.rex" */
  1973. {
  1974.                            PhoneLogScanner_Attribute.lexstring = PutString("",0);
  1975.                            yyPrevious;
  1976.                            return(35);
  1977.                           
  1978. } yy37: goto yyBegin;
  1979. case 52:;
  1980. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1981. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1982. /* line 172 "PhoneLogScanner.rex" */
  1983. {
  1984.                            PhoneLogScanner_Attribute.lexstring = PutString("",0);
  1985.                            yyPrevious;
  1986.                            return(37);
  1987.                           
  1988. } yy38: goto yyBegin;
  1989. case 47:;
  1990. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  1991. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  1992. /* line 177 "PhoneLogScanner.rex" */
  1993. {
  1994.                            PhoneLogScanner_Attribute.lexstring = PutString("",0);
  1995.                            yyPrevious;
  1996.                            return(39);
  1997.                           
  1998. } yy39: goto yyBegin;
  1999. case 41:;
  2000. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  2001. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  2002. /* line 182 "PhoneLogScanner.rex" */
  2003. {
  2004.                            PhoneLogScanner_Attribute.lexstring = PutString("",0);
  2005.                            yyPrevious;
  2006.                            return(45);
  2007.                           
  2008. } yy40: goto yyBegin;
  2009. case 32:;
  2010. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  2011. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  2012. /* line 187 "PhoneLogScanner.rex" */
  2013. {
  2014.                            PhoneLogScanner_Attribute.lexstring = PutString("",0);
  2015.                            yyPrevious;
  2016.                            return(47);
  2017.                           
  2018. } yy41: goto yyBegin;
  2019. case 25:;
  2020. PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  2021. PhoneLogScanner_Attribute.Position.Column = (unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart;
  2022. /* line 192 "PhoneLogScanner.rex" */
  2023. {
  2024.                            PhoneLogScanner_Attribute.lexstring = PutString("",0);
  2025.                            yyPrevious;
  2026.                            program=0;
  2027.                            return(43);
  2028.                           
  2029. } yy42: goto yyBegin;
  2030. case 14:;
  2031. {/* BlankAction */
  2032. while (* yyChBufferIndexReg ++ == ' ') ;
  2033. PhoneLogScanner_TokenPtr = (char *) -- yyChBufferIndexReg;
  2034. yyState = yyStartState;
  2035. yyStatePtr = & yyStateStack [1];
  2036. goto yyContinue;
  2037. } yy43: goto yyBegin;
  2038. case 12:;
  2039. {/* TabAction */
  2040. yyLineStart -= 7 - ((unsigned char *) PhoneLogScanner_TokenPtr - yyLineStart - 1) & 0x7; /* % 8 */
  2041. } yy44: goto yyBegin;
  2042. case 10:;
  2043. {/* EolAction */
  2044. yyLineCount ++;
  2045. yyLineStart = yyChBufferIndexReg - 1;
  2046. } yy45: goto yyBegin;
  2047. case 1:;
  2048. case 2:;
  2049. case 3:;
  2050. case 4:;
  2051. case 7:;
  2052. case 16:;
  2053. case 17:;
  2054. case 18:;
  2055. case 19:;
  2056. case 20:;
  2057. case 21:;
  2058. case 22:;
  2059. case 23:;
  2060. case 24:;
  2061. case 26:;
  2062. case 27:;
  2063. case 28:;
  2064. case 29:;
  2065. case 30:;
  2066. case 31:;
  2067. case 33:;
  2068. case 34:;
  2069. case 35:;
  2070. case 36:;
  2071. case 37:;
  2072. case 38:;
  2073. case 39:;
  2074. case 40:;
  2075. case 42:;
  2076. case 43:;
  2077. case 44:;
  2078. case 45:;
  2079. case 46:;
  2080. case 48:;
  2081. case 49:;
  2082. case 50:;
  2083. case 51:;
  2084. case 53:;
  2085. case 54:;
  2086. case 55:;
  2087. case 56:;
  2088. case 58:;
  2089. case 59:;
  2090. case 60:;
  2091. case 61:;
  2092. case 62:;
  2093. case 63:;
  2094. case 64:;
  2095. case 65:;
  2096. case 67:;
  2097. case 68:;
  2098. case 69:;
  2099. case 70:;
  2100. case 71:;
  2101. case 72:;
  2102. case 76:;
  2103. case 77:;
  2104. case 78:;
  2105. case 79:;
  2106. case 80:;
  2107. case 81:;
  2108. case 82:;
  2109. case 84:;
  2110. case 85:;
  2111. case 86:;
  2112. case 87:;
  2113. case 88:;
  2114. case 89:;
  2115. case 91:;
  2116. case 92:;
  2117. case 93:;
  2118. case 94:;
  2119. case 95:;
  2120. case 96:;
  2121. case 97:;
  2122. case 98:;
  2123. case 100:;
  2124. case 101:;
  2125. case 102:;
  2126. case 103:;
  2127. case 104:;
  2128. case 105:;
  2129. case 107:;
  2130. case 108:;
  2131. case 109:;
  2132. case 110:;
  2133. case 111:;
  2134. case 112:;
  2135. case 113:;
  2136. case 114:;
  2137. case 116:;
  2138. case 117:;
  2139. case 118:;
  2140. case 119:;
  2141. case 120:;
  2142. case 121:;
  2143. case 122:;
  2144. case 123:;
  2145. case 125:;
  2146. case 126:;
  2147. case 127:;
  2148. case 128:;
  2149. case 129:;
  2150. case 130:;
  2151. case 131:;
  2152. case 133:;
  2153. case 134:;
  2154. case 135:;
  2155. case 136:;
  2156. case 137:;
  2157. case 138:;
  2158. case 142:;
  2159. case 143:;
  2160. case 144:;
  2161. case 145:;
  2162. case 146:;
  2163. case 148:;
  2164. case 149:;
  2165. case 150:;
  2166. case 151:;
  2167. case 152:;
  2168. case 154:;
  2169. case 155:;
  2170. case 156:;
  2171. case 157:;
  2172. case 159:;
  2173. case 160:;
  2174. case 161:;
  2175. case 162:;
  2176. case 164:;
  2177. case 165:;
  2178. case 166:;
  2179. case 167:;
  2180. case 169:;
  2181. case 170:;
  2182. case 171:;
  2183. case 172:;
  2184. case 174:;
  2185. case 175:;
  2186. case 176:;
  2187. case 178:;
  2188. case 179:;
  2189. case 180:;
  2190. case 182:;
  2191. case 183:;
  2192. case 184:;
  2193. case 185:;
  2194. case 186:;
  2195. case 188:;
  2196. case 189:;
  2197. case 190:;
  2198. case 191:;
  2199. case 192:;
  2200. case 194:;
  2201. case 195:;
  2202. case 196:;
  2203. case 197:;
  2204. case 198:;
  2205. case 199:;
  2206. case 200:;
  2207. case 201:;
  2208. case 203:;
  2209. case 204:;
  2210. case 205:;
  2211. case 206:;
  2212. case 207:;
  2213. case 208:;
  2214. case 209:;
  2215. case 210:;
  2216. case 212:;
  2217. case 213:;
  2218. case 214:;
  2219. case 215:;
  2220. case 216:;
  2221. case 217:;
  2222. case 219:;
  2223. case 220:;
  2224. case 221:;
  2225. case 222:;
  2226. case 223:;
  2227. case 224:;
  2228. case 228:;
  2229. case 229:;
  2230. case 230:;
  2231. case 232:;
  2232. case 233:;
  2233. case 234:;
  2234. case 236:;
  2235. case 237:;
  2236. case 238:;
  2237. case 239:;
  2238. case 240:;
  2239. case 241:;
  2240. case 242:;
  2241. case 244:;
  2242. case 245:;
  2243. case 246:;
  2244. case 247:;
  2245. case 248:;
  2246. case 249:;
  2247.      /* non final states */
  2248.      yyChBufferIndexReg --;            /* return character */
  2249.      break;
  2250.  
  2251. case 9:
  2252.      PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  2253.      PhoneLogScanner_Attribute.Position.Column = yyChBufferIndexReg - yyLineStart;
  2254.       /* PhoneLogScanner_TokenLength   = 1; */
  2255.      yyChBufferIndex = ++ yyChBufferIndexReg;
  2256.      {
  2257. /* line 50 "PhoneLogScanner.rex" */
  2258. /* DEFAULT */
  2259.          /* unmatched characters */
  2260.          printf("%d,%d : %c\n",PhoneLogScanner_Attribute.Position.Line,PhoneLogScanner_Attribute.Position.Column,yyChBufferIndexReg[-1]);
  2261.          /* DEFAULT */
  2262.      }
  2263.      goto yyBegin;
  2264.  
  2265.       case yyDNoState:                /* automatic initialization */
  2266.      yyInitialize ();
  2267.      yySourceFile = StdIn;
  2268.      goto yyBegin;
  2269.  
  2270. case 8:
  2271.      yyChBufferIndex = -- yyChBufferIndexReg; /* undo last state transition */
  2272.      if (-- PhoneLogScanner_TokenLength == 0) {        /* get previous state */
  2273.         yyState = yyStartState;
  2274.      } else {
  2275.         yyState = * (yyStatePtr - 1);
  2276.      }
  2277.  
  2278.      if (yyChBufferIndex != & yyChBufferStart [yyBytesRead]) {
  2279.                         /* end of buffer sentinel in buffer */
  2280.         if ((yyState = yyEobTrans [yyState]) == yyDNoState) continue;
  2281.         yyChBufferIndexReg ++;
  2282.         * yyStatePtr ++ = yyState;        /* push state */
  2283.         goto yyContinue;
  2284.      }
  2285.                         /* end of buffer reached */
  2286.      {  /* copy initial part of token in front of the input buffer */
  2287.         register char * yySource = PhoneLogScanner_TokenPtr;
  2288.         register char * yyTarget = PhoneLogScanner_TokenPtr = (char *) & yyChBufferPtr [yyMaxAlign - PhoneLogScanner_TokenLength % yyMaxAlign];
  2289.         if (yySource != yyTarget) {
  2290.            while (yySource < (char *) yyChBufferIndexReg) * yyTarget ++ = * yySource ++;
  2291.            yyLineStart += (unsigned char *) yyTarget - yyChBufferStart - yyBytesRead;
  2292.            yyChBufferStart = (unsigned char *) yyTarget;
  2293.         } else {
  2294.            yyChBufferStart = yyChBufferIndexReg;
  2295.         }
  2296.      }
  2297.  
  2298.      if (! yyEof) {                /* read buffer and restart */
  2299.         int yyChBufferFree = (int) Exp2 (Log2 (yyChBufferSize - 4 - yyMaxAlign - PhoneLogScanner_TokenLength));
  2300.         if (yyChBufferFree < yyChBufferSize / 8) {
  2301.            register int yyDelta;
  2302.            register unsigned char * yyOldChBufferPtr = yyChBufferPtr;
  2303.            ExtendArray ((char * *) & yyChBufferPtr, & yyChBufferSize, sizeof (char));
  2304.            if (yyChBufferPtr == NULL) yyErrorMessage (1);
  2305.            yyDelta = yyChBufferPtr - yyOldChBufferPtr;
  2306.            yyChBufferStart    += yyDelta;
  2307.            yyLineStart    += yyDelta;
  2308.            PhoneLogScanner_TokenPtr    += yyDelta;
  2309.            yyChBufferFree = (int) Exp2 (Log2 (yyChBufferSize - 4 - yyMaxAlign - PhoneLogScanner_TokenLength));
  2310.            if (yyStateStackSize < yyChBufferSize) {
  2311.           yyStateRange * yyOldStateStack = yyStateStack;
  2312.           ExtendArray ((char * *) & yyStateStack, & yyStateStackSize, sizeof (yyStateRange));
  2313.           if (yyStateStack == NULL) yyErrorMessage (1);
  2314.           yyStatePtr    += yyStateStack - yyOldStateStack;
  2315.            }
  2316.         }
  2317.         yyChBufferIndex = yyChBufferIndexReg = yyChBufferStart;
  2318.         yyBytesRead = PhoneLogScanner_GetLine (yySourceFile, (char *) yyChBufferIndex, yyChBufferFree);
  2319.         if (yyBytesRead <= 0) { yyBytesRead = 0; yyEof = true; }
  2320.         yyChBufferStart [yyBytesRead    ] = yyEobCh;
  2321.         yyChBufferStart [yyBytesRead + 1] = '\0';
  2322.         goto yyContinue;
  2323.      }
  2324.  
  2325.      if (PhoneLogScanner_TokenLength == 0) {        /* end of file reached */
  2326.         PhoneLogScanner_Attribute.Position.Line   = yyLineCount;
  2327.         PhoneLogScanner_Attribute.Position.Column = yyChBufferIndexReg - yyLineStart;
  2328.         PhoneLogScanner_CloseFile ();
  2329.         if (yyFileStackPtr == yyFileStack) {
  2330. /* line 55 "PhoneLogScanner.rex" */
  2331. /* EOF */
  2332.          /* EOF */
  2333.         }
  2334.         if (yyFileStackPtr == yyFileStack) return PhoneLogScanner_EofToken;
  2335.         goto yyBegin;
  2336.      }
  2337.      break;
  2338.  
  2339.       default:
  2340.      yyErrorMessage (0);
  2341.       }
  2342.    }
  2343. }
  2344.  
  2345. void PhoneLogScanner_BeginFile(char * yyFileName)
  2346.    {
  2347.       yyInitialize ();
  2348.       yySourceFile = PhoneLogScanner_BeginSource (yyFileName);
  2349.    }
  2350.  
  2351. static void yyInitialize (void)
  2352.    {
  2353.       if (yyFileStackPtr >= yyFileStack + yyFileStackSize) yyErrorMessage (2);
  2354.       yyFileStackPtr ++;            /* push file */
  2355.       yyFileStackPtr->yySourceFile    = yySourceFile        ;
  2356.       yyFileStackPtr->yyEof        = yyEof            ;
  2357.       yyFileStackPtr->yyChBufferPtr    = yyChBufferPtr        ;
  2358.       yyFileStackPtr->yyChBufferStart    = yyChBufferStart    ;
  2359.       yyFileStackPtr->yyChBufferSize    = yyChBufferSize    ;
  2360.       yyFileStackPtr->yyChBufferIndex    = yyChBufferIndex    ;
  2361.       yyFileStackPtr->yyBytesRead    = yyBytesRead        ;
  2362.       yyFileStackPtr->yyLineCount    = yyLineCount        ;
  2363.       yyFileStackPtr->yyLineStart    = yyLineStart        ;
  2364.                         /* initialize file state */
  2365.       yyChBufferSize       = yyInitBufferSize;
  2366.       MakeArray ((char * *) & yyChBufferPtr, & yyChBufferSize, sizeof (char));
  2367.       if (yyChBufferPtr == NULL) yyErrorMessage (1);
  2368.       yyChBufferStart       = & yyChBufferPtr [yyMaxAlign];
  2369.       yyChBufferStart [-1] = yyEolCh;        /* begin of line indicator */
  2370.       yyChBufferStart [ 0] = yyEobCh;        /* end of buffer sentinel */
  2371.       yyChBufferStart [ 1] = '\0';
  2372.       yyChBufferIndex       = yyChBufferStart;
  2373.       yyEof           = false;
  2374.       yyBytesRead       = 0;
  2375.       yyLineCount       = 1;
  2376.       yyLineStart       = & yyChBufferStart [-1];
  2377.       if (yyStartState == 0) {
  2378.      yyStartState       = STD;
  2379.      yyStateStack [0]  = yyDefaultState;    /* stack underflow sentinel */
  2380.       }
  2381.    }
  2382.  
  2383. void PhoneLogScanner_CloseFile (void)
  2384.    {
  2385.       if (yyFileStackPtr == yyFileStack) yyErrorMessage (3);
  2386.       PhoneLogScanner_CloseSource (yySourceFile);
  2387.       ReleaseArray ((char * *) & yyChBufferPtr, & yyChBufferSize, sizeof (char));
  2388.                         /* pop file */
  2389.       yySourceFile    = yyFileStackPtr->yySourceFile        ;
  2390.       yyEof        = yyFileStackPtr->yyEof            ;
  2391.       yyChBufferPtr    = yyFileStackPtr->yyChBufferPtr        ;
  2392.       yyChBufferStart    = yyFileStackPtr->yyChBufferStart    ;
  2393.       yyChBufferSize    = yyFileStackPtr->yyChBufferSize    ;
  2394.       yyChBufferIndex    = yyFileStackPtr->yyChBufferIndex    ;
  2395.       yyBytesRead    = yyFileStackPtr->yyBytesRead        ;
  2396.       yyLineCount    = yyFileStackPtr->yyLineCount        ;
  2397.       yyLineStart    = yyFileStackPtr->yyLineStart        ;
  2398.       yyFileStackPtr --;
  2399.    }
  2400.  
  2401. int PhoneLogScanner_GetWord(char * yyWord)
  2402.    {
  2403.       register char * yySource            = PhoneLogScanner_TokenPtr;
  2404.       register char * yyTarget            = yyWord;
  2405.       register char * yyChBufferIndexReg    = (char *) yyChBufferIndex;
  2406.  
  2407.       do {                /* ASSERT word is not empty */
  2408.      * yyTarget ++ = * yySource ++;
  2409.       } while (yySource < yyChBufferIndexReg);
  2410.       * yyTarget = '\0';
  2411.       return yyChBufferIndexReg - PhoneLogScanner_TokenPtr;
  2412.    }
  2413.  
  2414. int PhoneLogScanner_GetLower(char * yyWord)
  2415.    {
  2416.       register char * yySource            = PhoneLogScanner_TokenPtr;
  2417.       register char * yyTarget            = yyWord;
  2418.       register char * yyChBufferIndexReg    = (char *) yyChBufferIndex;
  2419.  
  2420.       do {                /* ASSERT word is not empty */
  2421.      * yyTarget ++ = yyToLower [* yySource ++];
  2422.       } while (yySource < yyChBufferIndexReg);
  2423.       * yyTarget = '\0';
  2424.       return yyChBufferIndexReg - PhoneLogScanner_TokenPtr;
  2425.    }
  2426.  
  2427. int PhoneLogScanner_GetUpper(char * yyWord)
  2428.    {
  2429.       register char * yySource            = PhoneLogScanner_TokenPtr;
  2430.       register char * yyTarget            = yyWord;
  2431.       register char * yyChBufferIndexReg    = (char *) yyChBufferIndex;
  2432.  
  2433.       do {                /* ASSERT word is not empty */
  2434.      * yyTarget ++ = yyToUpper [* yySource ++];
  2435.       } while (yySource < yyChBufferIndexReg);
  2436.       * yyTarget = '\0';
  2437.       return yyChBufferIndexReg - PhoneLogScanner_TokenPtr;
  2438.    }
  2439.  
  2440. static char input (void)
  2441.    {
  2442.       if (yyChBufferIndex == & yyChBufferStart [yyBytesRead]) {
  2443.      if (! yyEof) {
  2444.         yyLineStart -= yyBytesRead;
  2445.         yyChBufferIndex = yyChBufferStart = yyChBufferPtr;
  2446.         yyBytesRead = PhoneLogScanner_GetLine (yySourceFile, (char *) yyChBufferIndex,
  2447.            (int) Exp2 (Log2 (yyChBufferSize)));
  2448.         if (yyBytesRead <= 0) { yyBytesRead = 0; yyEof = true; }
  2449.         yyChBufferStart [yyBytesRead    ] = yyEobCh;
  2450.         yyChBufferStart [yyBytesRead + 1] = '\0';
  2451.      }
  2452.       }
  2453.       if (yyChBufferIndex == & yyChBufferStart [yyBytesRead]) return '\0';
  2454.       else return((char)(*yyChBufferIndex++));
  2455.    }
  2456.  
  2457. void PhoneLogScanner_BeginScanner (void)
  2458.    {
  2459. /* line 46 "PhoneLogScanner.rex" */
  2460. /* BEGIN */
  2461.    }
  2462.  
  2463. void PhoneLogScanner_CloseScanner (void)
  2464.    {
  2465. /* line 48 "PhoneLogScanner.rex" */
  2466. /* CLOSE */
  2467.    }
  2468.  
  2469. static void yyErrorMessage(int yyErrorCode)
  2470.    {
  2471.       WritePosition (stderr, PhoneLogScanner_Attribute.Position);
  2472.       switch (yyErrorCode) {
  2473.       case 0: (void) fprintf (stderr, ": PhoneLogScanner: internal error\n"); break;
  2474.       case 1: (void) fprintf (stderr, ": PhoneLogScanner: out of memory\n"); break;
  2475.       case 2: (void) fprintf (stderr, ": PhoneLogScanner: too many nested include files\n"); break;
  2476.       case 3: (void) fprintf (stderr, ": PhoneLogScanner: file stack underflow (too many calls of PhoneLogScanner_CloseFile)\n"); break;
  2477.       }
  2478.      (*PhoneLogScanner_Exit)();
  2479.    }
  2480.